/* ---------------------------------------------- /*
 *  reset
/* ---------------------------------------------- */
* {
	box-sizing: border-box;
}
html.lock {
	width: 100%;
	height: 100%;
    overflow: hidden;
}
body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, iframe, fieldset, legend, label, button, input, textarea, th, td, figure {
    margin: 0;
    padding: 0
}
a, a:hover, a:visited, a:focus {
	color: inherit;
    text-decoration: none;
    outline: none;
}
ul, ol {
    list-style: none
}
table {
    border-collapse: collapse;
    border-spacing: 0
}
input, button, select, textarea {
    outline: none
}
textarea {
    resize: none
}
button {
    background: none;
    border: none;
    outline: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
}
button:active,
button:focus {
	outline: none !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	-ms-box-shadow: none !important;
	box-shadow: none !important;
}
img {
	border: none;
}

body {
    font-size: 12px;
    font-family: Helvetica, arial, '微软雅黑', sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
    background: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* -------------------------------
 * 共用类
-------------------------------- */
.m-t-40 {
	margin-top: 40px !important;
}
.m-t-50 {
	margin-top: 50px !important;
}
.m-b-40 {
	margin-bottom: 40px !important;
}
.m-b-100 {
	margin-bottom: 100px !important;
}
.p-b-100 {
	padding-bottom: 100px !important;
}
.p-l-20 {
	padding-left: 20px !important;
}
.p-r-20 {
	padding-right: 20px !important;
}
.p-l-30 {
	padding-left: 30px !important;
}
.p-l-60 {
	padding-left: 60px !important;
}
.p-r-30 {
	padding-right: 30px !important;
}
.p-r-60 {
	padding-right: 60px !important;
}
.full-button {
	display: block;
}
.full-button img {
	display: block;
	width: 100%;
	height: auto;
}
/* -------------------------------
 * 布局
-------------------------------- */
#main {
	min-width: 100vw;
	min-height: 100vh;
    -webkit-background-size: cover;
    background-size: cover;
	background-position: left bottom;
}
#navigator {
	display: block;
	position: fixed;
	width: 100%;
	height: 50px;
	left: 0;
	bottom: 0;
	font-size: 0;
	background: #87478d;
	z-index: 200;
}
#navigator li {
	display: inline-block;
	width: 25%;
	height: 50px;
	vertical-align: top;
	text-align: center;
}
#navigator li a {
	position: relative;
	display: block;
	padding-top: 7px;
	font-size: 9px;
	color: #c68ebd;
}
#navigator li.active a {
	color: #fff;
}
#navigator li a:before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	margin: 0 auto 3px;
	-webkit-background-size: cover;
	background-size: cover;
}
#navigator li:nth-child(1) a:before {
	background-image: url(img/general/01.png);
}
#navigator li.active:nth-child(1) a:before {
	background-image: url(img/general/01-2.png);
}
#navigator li:nth-child(2) a:before {
	background-image: url(img/general/02.png);
}
#navigator li.active:nth-child(2) a:before {
	background-image: url(img/general/02-2.png);
}
#navigator li:nth-child(3) a:before {
	background-image: url(img/general/03.png);
}
#navigator li.active:nth-child(3) a:before {
	background-image: url(img/general/03-2.png);
}
#navigator li:nth-child(4) a:before {
	background-image: url(img/general/04.png);
}
#navigator li.active:nth-child(4) a:before {
	background-image: url(img/general/04-2.png);
}


/* -------------------------------
 * 01-今日学习
-------------------------------- */
.today-tutorial {
	background-image: url(img/01/bg.png);
}
.date-tag {
	display: block;
	position: fixed;
	width: 45px;
	height: 56px;
	top: 0;
	right: 12.5px;
	padding-top: 5px;
	text-align: center;
	color: #000;
	font-size: 12px;
	font-weight: 800;
	background-image: url(img/01/tag.png);
	-webkit-background-size: cover;
	background-size: cover;
}
.new-word-box {
	position: relative;
	padding: 35px 40px 0 175px;
}
.new-word-box .word-img {
	display: block;
	position: absolute;
	width: 100px;
	height: 100px;
	top: 35px;
	left: 40px;
	border: 1px solid #707070;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
	overflow: hidden;
}
.new-word-box .word-img img {
	display: block;
	width: 100%;
	height: auto;
}
.new-word-box .info {
	position: relative;
	min-height: 100px;
}
.new-word-box .info strong {
	display: block;
	position: relative;
	font-size: 24px;
	line-height: 1;
	color: #87478d;
}
.new-word-box .info .statistics {
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	font-size: 0;
	white-space: nowrap;
} 
.new-word-box .info .statistics li {
	display: inline-block;
	margin-right: 25px;
	vertical-align: bottom;
	font-size: 15px;
	color: #434343;
}
.new-word-box .info .statistics li:last-child {
	margin-right: 0;
}
.new-word-box .info .statistics li span {
	display: block;
	text-align: center;
	color: #87478d;
	font-size: 18px;
}
.new-word-box .info .statistics li .read {
	display: block;
}
.new-word-box .info .statistics li .read:before {
	content: "";
	display: block;
	position: relative;
	top: -2px;
	width: 15px;
	height: 25px;
	margin: 0 auto;
	background-image: url(img/01/audio.png);
	-webkit-background-size: cover;
	background-size: cover;
}
.cloud-nav {
	display: block;
	position: fixed;
	width: 100%;
	left: 0;
	bottom: 14.8vh;
}
.cloud-nav a {
	display: block;
	position: absolute;
	font-size: 0;
	-webkit-background-size: cover;
	background-size: cover;
}
.cloud-nav a:nth-child(1) {
	width: 33.8vw;
	height: 14.4vw;
	left: 8vw;
	bottom: 12vh;
	background-image: url(img/01/01.png);
}
.cloud-nav a:nth-child(2) {
	width: 25.3vw;
	height: 14.7vw;
	left: 25vw;
	bottom: 2vh;
	background-image: url(img/01/02.png);
}
.cloud-nav a:nth-child(3) {
	width: 25.3vw;
	height: 14.7vw;
	left: 53vw;
	bottom: 13vh;
	background-image: url(img/01/03.png);
}
.cloud-nav a:nth-child(4) {
	width: 24vw;
	height: 13vw;
	left: 68vw;
	bottom: 0;
	background-image: url(img/01/04.png);
}



/* -------------------------------
 * 03-听绘本
-------------------------------- */
.book-list {
	padding: 0 22px 160px;
}
.book-list h2 {
	padding: 25px 0;
	text-align: center;
	font-size: 18px;
	line-height: 1;
	color: #434343;
}
.book-list ul {
	margin: 0 -15px;
	font-size: 0;
}
.book-list ul li {
	display: inline-block;
	width: 33.33333333%;
	margin-bottom: 15px;
	padding: 0 15px;
	vertical-align: top;
	color: #87478d;
}
.book-list ul li.active {
	opacity: .5;
}
.book-list ul li .cover {
	width: 100px;
	height: 100px;
	border: 1px solid #707070;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
	overflow: hidden;
}
.book-list ul li .cover img {
	display: block;
	width: 100%;
	height: auto;
}
.book-list ul li strong {
	display: block;
	margin: 5px 0;
	font-size: 15px;
	font-weight: 400;
	line-height: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.book-list ul li time {
	display: block;
	font-size: 10px;
	text-align: center;
}
.play-book {
	display: block;
	position: fixed;
	width: 100%;
	height: 90px;
	left: 0;
	bottom: 50px;
	padding-top: 10px;
	background: #dbc9de;
	border-top: 1px solid #87478d;
	text-align: center;
}
.play-book span {
	font-size: 15px;
	color: #87478d;
}
.play-book button {
	display: block;
	width: 300px;
	margin: -12px auto 0;
}
.play-book button img {
	display: block;
	width: 100%;
	height: auto;
}



/* -------------------------------
 * 04-我的
-------------------------------- */
.profile-box {
	width: 100%;
	height: 190px;
	padding-top: 25px;
	text-align: center;
	color: #fff;
	background-image: url(img/04/bg.png);
	-webkit-background-size: cover;
	background-size: cover;
	background-position: left bottom;
}
.profile-box .portrait {
	display: block;
	width: 85px;
	height: 85px;
	margin: 0 auto 10px;
	overflow: hidden;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.profile-box .portrait img {
	display: block;
	width: 100%;
	height: auto;
}
.profile-box strong {
	display: block;
	font-size: 18px;
	font-weight: 400;
}
.profile-box span {
	display: block;
	font-size: 15px;
}
.icon-link-list ul {
	font-size: 0;
}
.icon-link-list li {
	display: inline-block;
	height: 100px;
	border: 0.5px solid #a0a0a0;
	vertical-align: top;
	text-align: center;
}
.icon-link-list li:nth-child(1),
.icon-link-list li:nth-child(2) {
	border-top: none;
}
.icon-link-list li:nth-child(1),
.icon-link-list li:nth-child(3) {
	border-left: none;
}
.icon-link-list li:nth-child(2),
.icon-link-list li:nth-child(5) {
	border-right: none;
}
.icon-link-list li:nth-child(3),
.icon-link-list li:nth-child(4),
.icon-link-list li:nth-child(5) {
	border-bottom-width: 1px;
}
.icon-link-list li.half {
	width: 50%;
}
.icon-link-list li.third {
	width: 33.3333333333%;
}
.icon-link-list li i {
	display: block;
	width: 32px;
	height: 65px;
	margin: 0 auto;
	text-align: center;
	font-size: 0;
}
.icon-link-list li i:after {
	content: "";
	display: inline-block;
	width: 0;
	height: 100%;
	vertical-align: middle;
}
.icon-link-list li img {
	display: inline-block;
	width: auto;
	height: auto;
	max-width: 32px;
	max-height: 32px;
	vertical-align: middle;
}
.icon-link-list li span {
	font-size: 15px;
	color: #434343;
}


/* -------------------------------
 * 05-邀请朋友
-------------------------------- */
.invite-banner {
	position: relative;
	margin-bottom: 30px;
	background-image: url(img/05/bg.png);
	-webkit-background-size: cover;
	background-size: cover;
	background-position: left bottom;
}
.invite-banner img {
	display: block;
	width: 100%;
	height: auto;
}
.invite-banner .inner {
	position: relative;
	bottom: -25px;
	padding: 6px 30px 0;
}
.invite-description-list {
	padding: 0 35px;
}
.invite-description-list li {
	display: block;
	position: relative;
	min-height: 66px;
	margin-bottom: 12px;
	padding: 10px 15px 10px 70px;
	background: #eee;
	border: 1px solid #9db4b2;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
}
.invite-description-list li img {
	display: block;
	position: absolute;
	width: 40px;
	height: 40px;
	left: 15px;
	top: 50%;
	margin-top: -20px;
}
.invite-description-list li strong {
	display: block;
	font-size: 15px;
	font-weight: 400;
	color: #87478d;
}
.invite-description-list li span {
	font-size: 12px;
	color: #434343;
}
.share-box {
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgba(0,0,0,0.8);
	z-index: 200
}
.share-box img {
	display: block;
	position: absolute;
	width: 200px;
	height: auto;
	left: 50%;
	top: 50%;
	margin: 0 0 0 -100px;
}



/* -------------------------------
 * 08-购买书籍
-------------------------------- */
.book-cover {
	position: relative;
	padding: 0 0 100px 0;
}
.book-cover img {
	display: block;
	width: 100%;
	height: auto;
}
.book-info {
	position: fixed;
	width: 100%;
	left: 0;
	bottom: 0;
	padding: 15px 110px 15px 15px;
	background: #fef3ff;
}
.book-info .name {
	display: block;
	font-size: 15px;
	font-weight: 800;
	color: #a0a0a0;
}
.book-info del {
	display: inline-block;
	margin-right: 10px;
	font-size: 12px;
	color: #87478d;
}
.book-info span {
	display: inline-block;
	font-size: 15px;
	font-weight: 800;
	color: #87478d;
}
.book-info button {
	display: block;
	position: absolute;
	width: 110px;
	height: 100%;
	right: 0;
	top: 0;
	text-align: center;
	background: #87478d;
	font-size: 15px;
	font-weight: 800;
	color: #fff;
}
.book-info button.disabled {
	background: #a0a0a0;
}

/* -------------------------------
 * 09-进入游戏
-------------------------------- */
.go-gaming {
	padding-top: 35px;
	background-image: url(img/09/bg.png);
}
.good-job {
	width: 100%;
	height: 395px;
	text-align: center;
	background-image: url(img/09/bg2.png);
	-webkit-background-size: 338px auto;
	background-size: 338px auto;
	background-repeat: no-repeat;
	background-position: center center;
}
.good-job strong {
	display: block;
	position: absolute;
	width: 100%;
	top: 270px;
	font-size: 12px;
	font-weight: 400;
	color: #87478d;
	text-align: center;
}
.study-progress {
	position: relative;
	padding-top: 30px;
	text-align: center;
	font-size: 0;
}
.study-progress span {
	display: inline-block;
	position: relative;
	margin: 0 6px;
	vertical-align: top;
	font-size: 12px;
	color: #808080;
}
.study-progress span:before {
	content: "";
	display: block;
	position: absolute;
	width: 10px;
	height: 10px;
	top: -30px;
	left: 50%;
	margin-left: -5px;
	border: 2px solid #a0a0a0;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.study-progress span:after {
	content: "";
	display: block;
	position: absolute;
	width: 44px;
	height: 2px;
	top: -25px;
	left: 50%;
	margin-left: 7px;
	background: #a0a0a0;
}
.study-progress span:last-child:after {
	display: none;
}
.study-progress span.active:before {
	border-collapse: #87478d;
	background: #faafee;
}
.good-job .study-progress {
	top: 280px;
}
.go-gaming .btn-group {
	width: 260px;
	margin: 0 auto;
	font-size: 0;
}
.go-gaming .btn-group img {
	display: block;
	width: 100%;
	height: auto;
}
.go-gaming .btn-group .refresh {
	display: inline-block;
	width: 43px;
	height: 43px;
	margin-right: 12px;
	vertical-align: top;
}
.go-gaming .btn-group a {
	display: inline-block;
	width: 205px;
}


/* -------------------------------
 * 11-训练营
-------------------------------- */
.training-camp {
	padding: 65px 0;
	background: #a75c9c;
}
.training-camp section {
	margin: 0 10px 10px;
	background: #eee;
	border: 1px solid #9cb5b2;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	-ms-border-radius: 10px;
	border-radius: 10px;
}
.training-camp .study-statistics {
	position: relative;
	padding: 60px 0 30px 0;
	text-align: center;
}
.training-camp .study-statistics:before {
	content: "";
	display: block;
	position: absolute;
	width: 126px;
	height: 84px;
	top: -45px;
	left: 50%;
	margin-left: -42px;
	background-image: url(img/11/bg.png);
	-webkit-background-size: cover;
	background-size: cover;
}
.training-camp .study-statistics > span {
	display: block;
	font-size: 15px;
	color: #434343;
}
.pie-progress {
	margin-top: 30px;
	font-size: 0;
}
.pie-progress .item {
	display: inline-block;
	position: relative;
	width: 90px;
	height: 90px;
	margin: 0 7px;
	vertical-align: top;
	background: #fff;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.pie-progress .item .center {
	display: block;
	position: absolute;
	width: 72px;
	height: 72px;
	left: 9px;
	top: 9px;
	padding-top: 22px;
	text-align: center;
	font-size: 10px;
	color: #434343;
	background: #eee;
	z-index: 20;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.pie-progress .item .center strong {
	display: block;
	font-size: 15px;
	color: #9f85dc;
}
.pie-progress .pie {
    position: absolute;
    height: 80px;
    width: 80px;
    left: 5px;
    top: 5px;
    z-index: 5;
    background: #9f85dc;
    -moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.pie-progress .pie-right,
.pie-progress .pie-left { 
    position: absolute;
    top: 0;
    left: 0;
    height: 80px;
    width: 80px;
    border-radius: 50%;
    -moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.pie-progress .right, 
.pie-progress .left {
    position: absolute;
    top: 0;
    left: 0;
    height: 80px;
    width: 80px;
    background: #ddd;
    -moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.pie-progress .pie-right,
.pie-progress .right {
    clip: rect(0, auto, auto, 40px);
}
.pie-progress .pie-left,
.pie-progress .left {
    clip: rect(0, 40px, auto, 0);
}
.training-camp .history {
	position: relative;
	padding: 25px 15px 25px 110px;
}
.training-camp .history .pic {
	display: block;
	position: absolute;
	width: 80px;
	height: 80px;
	top: 25px;
	left: 15px;
	border: 1px solid #707070;
	overflow: hidden;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
}
.training-camp .history .pic img {
	display: block;
	width: 100%;
	height: auto;
}
.training-camp .history .info span {
	display: block;
	font-size: 12px;
	color: #434343;
}
.training-camp .history .info strong {
	display: block;
	font-size: 12px;
	font-weight: 400;
	color: #87478d;
}
.training-camp .history .info hr {
	display: block;
	width: 100%;
	height: 1px;
	margin: 12px 0;
	border: none;
	outline: none;
	background: #898989;
}
.training-camp .history .info em {
	display: block;
	margin-top: 30px;
	font-size: 15px;
	font-style: normal;
	font-weight: 800;
	color: #d5bfce;
	line-height: 1;
	letter-spacing: 2px;
}
.training-camp .follow {
	position: relative;
	min-height: 130px;
	padding: 25px 110px 25px 15px;
}
.training-camp .follow img {
	display: block;
	position: absolute;
	width: 80px;
	height: 80px;
	top: 25px;
	right: 15px;
}
.training-camp .follow p {
	font-size: 12px;
	color: #434343;
	line-height: 2;
}


/* -------------------------------
 * 02-学习记录
-------------------------------- */
.study-calendar,
.parent-calendar {
	background-image: url(img/10/bg.png);
}
.page-title {
	font-size: 18px;
	line-height: 50px;
	text-align: center;
	background: #dbc9de;
	color: #000;
	font-weight: 400;
}
.page-nav {
	display: block;
	margin-bottom: 25px;
	font-size: 0;
}
.page-nav a {
	display: inline-block;
	position: relative;
	width: 50%;
	height: 50px;
	vertical-align: top;
	text-align: center;
	font-size: 18px;
	line-height: 50px;
	color: #898989;
}
.page-nav a.active {
	color: #87478d;
}
.page-nav a:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 5px;
	left: 0;
	bottom: 0;
	background: #898989;
	-moz-border-radius: 2.5px;
	-webkit-border-radius: 2.5px;
	-ms-border-radius: 2.5px;
	border-radius: 2.5px;
}
.page-nav a.active:after {
	background: #87478d;
}
.study-calendar .word-box {
	display: block;
	position: relative;
	margin-bottom: 23px;
	padding: 0 25px 0 115px;
}
.study-calendar .word-box .pic {
	display: block;
	position: absolute;
	width: 80px;
	height: 80px;
	top: 0;
	left: 25px;
	border: 1px solid #707070;
	overflow: hidden;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
}
.study-calendar .word-box .pic img {
	display: block;
	width: 100%;
	height: auto;
}
.study-calendar .word-box .info strong {
	display: block;
	margin-bottom: 10px;
	font-size: 15px;
	font-weight: 400;
	color: #000;
	line-height: 1.25;
}
.study-calendar .word-box .info span {
	display: block;
	font-size: 15px;
	color: #87478d;
}
.study-calendar .calendar .datepicker {
	margin-bottom: 28px;
	padding: 0 25px;
}
.study-calendar .calendar .datepicker .dow,
.study-calendar .calendar .datepicker tbody {
	display: none;
}
.study-calendar .study-list {
	display: block;
	position: relative;
	font-size: 0;
}
.study-calendar .study-list li {
	display: inline-block;
	width: 50%;
	margin-bottom: 17px;
	vertical-align: top;
	text-align: center;
	font-size: 12px;
	line-height: 1;
	color: #000;
}
.study-calendar .study-list li img {
	display: block;
	width: 95px;
	height: auto;
	margin: 0 auto 10px;
}
.study-calendar .study-list li:first-child img {
	width: 110px;
}

.calendar .datepicker-inline {
	width: 100%;
}
.calendar .datepicker table {
	width: 100%;
	font-weight: 400;
	color: #707070;
}
.calendar .datepicker .datepicker-switch {
	position: relative;
	font-weight: 400;
	font-size: 15px;
	color: #434343;
	pointer-events: none;
}
.calendar .datepicker .datepicker-switch:before {
	content: "";
	display: inline-block;
	width: 45px;
	height: 22px;
	margin-right: 10px;
	-webkit-background-size: cover;
	background-size: cover;
	background-image: url(img/02/bird-left.png);
	vertical-align: middle;
}
.calendar .datepicker .datepicker-switch:after {
	content: "";
	display: inline-block;
	width: 45px;
	height: 22px;
	margin-left: 10px;
	-webkit-background-size: cover;
	background-size: cover;
	background-image: url(img/02/bird-right.png);
	vertical-align: middle;
}
.calendar .datepicker .prev,
.calendar .datepicker .next,
.calendar .datepicker .prev:hover,
.calendar .datepicker .next:hover {
	width: 10px;
	height: 19px;
	padding: 0;
	font-size: 0;
	-webkit-background-size: 10px 19px;
	background-size: 10px 19px;
	background-repeat: no-repeat;
	background-position: center center;
}
.calendar .datepicker .prev,
.calendar .datepicker .prev:hover {
	background-image: url(img/10/left.png);
}
.calendar .datepicker .next,
.calendar .datepicker .next:hover {
	background-image: url(img/10/right.png);
}
.calendar .datepicker .datepicker-switch:hover, 
.calendar .datepicker .next:hover, 
.calendar .datepicker .prev:hover, 
.calendar .datepicker tfoot tr th:hover {
	background-color: transparent;
}
.calendar .datepicker .dow {
	font-size: 15px;
}
.calendar .datepicker table tr th {
	font-weight: 400;
}
.calendar .datepicker table .day {
	width: 50px;
	height: 50px;
	font-size: 20px;
	text-align: center;
	line-height: 50px;
	border-top: 1px solid #b5b5b5;
}
.calendar .datepicker table tr td.today {
	position: relative;
	color: #87478d;
	background: none;
}
.calendar .datepicker table tr td.active {
	position: relative;
	background: none !important;
	color: #87478d !important;
	border-color: #b5b5b5 !important;
}
.calendar .datepicker table tr td.today:after,
.calendar .datepicker table tr td.active.active:after, 
.calendar .datepicker table tr td.active.highlighted:after, 
.calendar .datepicker table tr td.active.highlighted:active:after, 
.calendar .datepicker table tr td.active:active:after {
	content: "";
	display: block;
	position: absolute;
	width: 32px;
	height: 32px;
	left: 50%;
	top: 50%;
	margin: -16px 0 0 -16px;
	border: 1px solid #87478d;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.calendar .datepicker table tr td.day:hover, 
.calendar .datepicker table tr td.focused,
.calendar .datepicker table tr td.active, 
.calendar .datepicker table tr td.active.highlighted, 
.calendar .datepicker table tr td.active.highlighted:active, 
.calendar .datepicker table tr td.active:active {
	width: 50px;
	height: 50px;
	background: none;
	color: #87478d;
	border-color: #b5b5b5;
	text-shadow: none;
	border-radius: 0;
}
.calendar .datepicker table tr td.today:hover {
	background-color: transparent;
	color: #fff;
}


.parent-calendar .calendar {
	padding: 0 25px;
}
.parent-calendar .calendar .datepicker .prev, 
.parent-calendar .calendar .datepicker .prev:hover,
.parent-calendar .calendar .datepicker .next, 
.parent-calendar .calendar .datepicker .next:hover,
.parent-calendar .calendar .datepicker .datepicker-switch {
	padding-bottom: 20px;
}
.parent-calendar .calendar .datepicker .prev, 
.parent-calendar .calendar .datepicker .prev:hover {
	background-position: left 4px;
}
.parent-calendar .calendar .datepicker .next, 
.parent-calendar .calendar .datepicker .next:hover {
	background-position: right 4px;
}

/* -------------------------------
 * loading
-------------------------------- */
.loading-box {
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #fff;
}
.loading-box:after {
	content: "";
	display: block;
	position: absolute;
	width: 32px;
	height: 32px;
	left: 50%;
	top: 50%;
	margin: -16px 0 0 -16px;
	background-image: url(img/general/loading.svg);
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
}

/* -------------------------------
 * 07-我的词汇量
-------------------------------- */
.my-word {
	padding-top: 30px;
	padding-bottom: 100px;
	background-image: url(img/07/bg.png);
}
.back-to-index {
	display: block;
	position: absolute;
	top: 20px;
	left: 20px;
	text-align: center;
	font-size: 12px;
	color: #87478d;
}
.back-to-index img {
	display: block;
	width: 30px;
	height: 30px;
	margin: 0 auto 5px;
}
.my-word .info {
	position: relative;
	margin-bottom: 18px;
	text-align: center;
	color: #87478d;
}
.my-word .info .pic {
	display: block;
	width: 70px;
	height: 70px;
	margin: 0 auto 12px;
	border: 2px solid #87478d;
	overflow: hidden;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.my-word .info .pic img {
	display: block;
	width: 100%;
	height: auto;
}
.my-word .info strong {
	display: block;
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: 400;
}
.my-word .info span {
	display: block;
	margin-bottom: 25px;
	font-size: 12px;
}
.my-word .info h4 {
	font-size: 50px;
	font-weight: 400;
	color: #000;
}
.charts-box {
	width: 100%;
}
.charts-box h5 {
	margin-bottom: 18px;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	color: #87478d;
}
.charts-box #charts {
	width: 100%;
	height: 350px;
}
.charts-box a {
	display: block;
	margin: 25px 65px 0;
}

/* -------------------------------
 * 游戏
-------------------------------- */
.game-nav {
	display: block;
	position: relative;
	padding: 38px 20px 0 60px;
}
.game-nav.double {
	padding: 38px 60px 0 60px;
}
.game-nav a,
.game-nav button {
	display: block;
	position: absolute;
	width: 30px;
	height: 30px;
	left: 20px;
	top: 30px;
}
.game-nav button {
	left: auto;
	right: 20px;
}
.game-nav img {
	display: block;
	width: 100%;
	height: auto;
}
.game-nav .progress-bar {
	display: block;
	width: 100%;
	height: 14px;
	padding: 4px;
	background: #fef1fe;
	font-size: 0;
	line-height: 0;
	border: 1px solid #87478d;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-ms-border-radius: 6px;
	border-radius: 6px;
}
.game-nav .progress-bar span {
	display: inline-block;
	height: 4px;
	background: #87478d;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-ms-border-radius: 2px;
	border-radius: 2px;
}
.game h3 {
	display: block;
	margin: 85px 0;
	font-size: 36px;
	font-weight: 400;
	color: #535353;
	line-height: 1;
	text-align: center;
}
.game h3.small-margin {
	margin: 35px 0;
}
.game h3 button {
	display: inline-block;
	position: relative;
	width: 30px;
	height: 30px;
	top: 3px;
	margin-left: 15px;
	vertical-align: top;
}
.game h3 button img {
	display: block;
	width: 100%;
	height: auto;
}
.text-option-box {
	display: block;
	padding: 0 35px 50px;
	text-align: center;
}
.text-option-box li {
	display: block;
	position: relative;
	width: 100%;
	height: 50px;
	margin-bottom: 10px;
	text-align: center;
	line-height: 50px;
	font-size: 24px;
	color: #87478d;
	background: #fef3ff;
	border: 1px solid #87478d;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow: 1.5px 3px 2px 0 #ab93ac;
	-webkit-box-shadow: 1.5px 3px 2px 0 #ab93ac;
	-ms-box-shadow: 1.5px 3px 2px 0 #ab93ac;
	box-shadow: 1.5px 3px 2px 0 #ab93ac;
}
.text-option-box li.wrong {
	background: #a0a0a0;
}
.text-option-box li.wrong:after {
	content: "x";
	display: block;
	position: absolute;
	width: 30px;
	height: 30px;
	top: 10px;
	right: 10px;
	background: #000;
	color: #a0a0a0;
	font-size: 24px;
	font-family: helvetica;
	line-height: 26px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
}
.img-option-box {
	display: block;
	padding: 0 30px;
	font-size: 0;
	overflow: hidden;
}
.img-option-box ul.half {
	margin: 0 -2.5px;
}
.img-option-box ul.triple {
	margin: 0;
}
.img-option-box ul li {
	display: inline-block;
	margin-bottom: 0;
	vertical-align: top;
}
.img-option-box ul.half li {
	width: 50%;
	margin-bottom: 5px;
	padding: 0 2.5px;
}
.img-option-box ul.triple li {
	width: 33.3333333333%;
	margin-bottom: 0;
	padding: 0;
}
.img-option-box ul li span {
	display: block;
	overflow: hidden;
	border: 5px solid #fff;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	-ms-border-radius: 10px;
	border-radius: 10px;
}
.img-option-box ul li.active span {
	border-color: #87478d;
}
.img-option-box ul li span img {
	display: block;
	width: 100%;
	height: auto;
}
.full-option-box {
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 45px;
	background: rgba(0,0,0,0.5);
	font-size: 0;
}
.full-option-box:after {
	content: "";
	display: inline-block;
	width: 0;
	height: 100%;
	vertical-align: middle;
}
.full-option-box .game {
	display: inline-block;
	position: relative;
	width: 100%;
	background: #fff;
	border: 6px solid #87478d;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	-ms-border-radius: 10px;
	border-radius: 10px;
	vertical-align: middle;
	z-index: 10;
}
.full-option-box .game h3 {
	margin: 18px 0;
}
.full-option-box .game .text-option-box {
	padding: 0 13px 13px;
}
.full-option-box .mask {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 1;
}

.img-option-slide {
	margin-top: 40px;
	margin-bottom: 30px;
	padding: 0 35px;
}
.img-option-slide .swiper-container {
	margin-bottom: 35px;
}
.img-option-slide span {
	display: block;
	overflow: hidden;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
}
.img-option-slide img {
	display: block;
	width: 100%;
	height: auto;
}
.img-option-slide .pagination {
	text-align: center;
	font-size: 0;
}
.img-option-slide .pagination span {
	display: inline-block;
	float: none;
	width: 50px;
	height: 3px;
	margin: 0 8px;
	background: #a0a0a0;
	opacity: 1;
	-moz-border-radius: 1.5px;
	-webkit-border-radius: 1.5px;
	-ms-border-radius: 1.5px;
	border-radius: 1.5px;
}
.img-option-slide .pagination span.swiper-pagination-bullet-active {
	background: #87478d;
}
.game .full-cover {
	display: block;
	max-width: 270px;
	margin: 20px auto 10px;
	overflow: hidden;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
}
.game .full-cover img {
	display: block;
	width: 100%;
	height: auto;
}
.game .higlight-text {
	padding: 0 15px 100px;
}
.game .higlight-text p {
	font-size: 18px;
	color: #87478d;
}
.game .higlight-text p span {
	display: inline-block;
	margin-bottom: 10px;
	padding: 5px;
	background: #dcdcdc;
	vertical-align: middle;
}
.game .higlight-text p span.space {
	width: 75px;
	height: 30px;
}
.game .higlight-text .option {
	margin-top: 25px;
	text-align: center;
}
.game .higlight-text .option span {
	display: inline-block;
	height: 30px;
	margin: 0 7.5px 7.5px;
	padding: 0 10px;
	line-height: 30px;
	background: #87478d;
	color: #fff;
	font-size: 18px;
}
.game-bottom {
	display: block;
	position: fixed;
	width: 100%;
	height: 90px;
	left: 0;
	bottom: 0;
	background: #fff;
}
.game-bottom img {
	display: block;
	width: 100%;
	height: auto;
}
.game-bottom .prev,
.game-bottom .next {
	display: block;
	position: absolute;
	width: 50px;
	height: 50px;
	top: 15px;
}
.game-bottom .prev {
	left: 15px;
}
.game-bottom .next {
	right: 15px;
}
.game-bottom .audio {
	display: block;
	width: 40px;
	height: 40px;
	margin: 20px auto;
}
.game-title {
	padding: 20px 30px 0 65px;
	font-size: 18px;
	font-weight: 400;
	color: #87478d;
	line-height: 30px;
}
.game-title span {
	display: inline-block;
	height: 30px;
	margin-left: 10px;
	padding: 0 10px;
	background: #e6922b;
	color: #fff;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	-ms-border-radius: 15px;
	border-radius: 15px;
}


